#ifndef NANE_FORWARDPARAMT_H
#   define NANE_FORWARDPARAMT_H

#   include "nane/core/NullPtr.h"

namespace nane
{
    // ForwardParamT<T>::Type is
    // - a Null type for type void
    template<typename T>
    struct ForwardParamT
    {
        typedef T Type;
        //static const char DefaultParam[-1];
    };

    template<>
    struct ForwardParamT<void>
    {
        typedef NullType Type;
        //static const NullType DefaultParam = NullPtr;
        enum Domain
        {
            DefaultParam = 0
        };
    };

}   // namespace nane

#endif	// NANE_FORWARDPARAMT_H
